1. Field of the Invention
The present invention relates to the field of decision devices for quadrature amplitude modulation. Specifically, the invention addresses the need for accurate decision making before the receiver has locked onto the correct carrier frequency.
2. Description of the Related Art
Quadrature amplitude modulation (QAM) is a method for sending two independent signals simultaneously over the same frequency channel. A simple block diagram for this process is shown in FIG. 1. The modulator 12 converts x(t) and y(t) into z(t) by multiplying x(t) by cos 2 .pi.f.sub.ct t and y(t) by sin 2 .pi.f.sub.ct t. Here, f.sub.ct is the transmitter modulation frequency. The demodulator 13 converts z(t) back into x(t) and y(t) by multiplying by cos 2 .pi.f.sub.cr t and sin 2 .pi.f.sub.cr t. Here, f.sub.cr is the receiver demodulation frequency. The signals x(t) and y(t) can be plotted along the x-axis and y-axis of a cartesian coordinate system. If this coordinate system is taken to be the complex plane, then x(t) is the real part and y(t) is the imaginary part of a complex signal.
For the transmission of digital signals over analog transmission media 10, quadrature amplitude modulation permits a finite number of discrete points in the complex plane to correspond to digital numbers or symbols. FIG. 2 shows an example of one possible set of points. Each point represents a symbol in the digital alphabet which can be transmitted. The set of points is called a constellation. Quadrature amplitude modulation generally uses rectangular constellations, where the points are in a rectangular lattice. The constellations are classified according to the number of bits M per symbol that they can convey. In order to convey M bits, the number of points in the constellation is 2.sup.M. In FIG. 2 M=7, thus there are 128 points in the constellation. FIG. 3 shows a rectangular constellation where M=6. As is demonstrated by FIG. 3, when M is equal to an even number, the constellation is square. One advantage to having a square constellation is that the half of the encoded bits are represented by the value along the x-axis, while the other half are represented by the value along the y-axis. Therefore, the coder in the transmitter for such a square constellation can be constructed as shown in FIG. 5, where the generation of x(t) and y(t) are independent of each other. In practice, x(t) and y(t) may not be coded independently even if the constellation is square, but only square constellations allow such independence to be exploited if desired. FIG. 5 shows the binary input 50 being separated into two independent streams of data 51 which can be independently converted into x(t) and y(t) by the analog to digital converters 52. Because each symbol is represented by M bits, a binary input rate of R bits per second corresponds to the symbol rate of R/M symbols per second. In FIG. 4, the first and third bits of each four bit symbol represent the position along the y-axis, and the second and fourth bits represent the position along the x-axis. However, if M is equal to an odd number, then the generation of x(t) and y(t) are dependent upon each other, thus requiring a slightly more complicated coder.
A standard receiver recovery system using an analog voltage-controlled oscillator (VCO) 60 is shown in FIG. 6. (FIG. 7 shows an equivalent system using a numerically controlled oscillator (NCO) 70 in which all feedback functions are performed in the digital domain. Because the discussion applies equally well to both types of systems with only minor obvious variations, for the sake of brevity, the systems will only be described with reference to FIG. 6 in which a VCO 60 is used.) An analog signal z(t) comes from a receiver (not shown), and is multiplied using complex multiplier 61 by cos 2 .pi.f.sub.cr t and sin 2 .pi.f.sub.cr t which are generated by the VCO 60. The VCO 60 is designed to oscillate at a certain frequency f.sub.cr which is an estimate of carrier frequency. This frequency f.sub.cr may not exactly be equal to the correct modulation frequency f.sub.ct. For example, in the case that the modulation frequency estimate is not derived by the receiver, the transmitter oscillator may have been slightly off, or slight frequency shifting may have occurred during transmission. In the case that the receiver derives its estimate of the modulation frequency f.sub.ct from the received signal, it is impossible to derive the correct frequency with the precision necessary for correct demodulation. In any case, the receiver's VCO 60 must be adjusted to exactly match the actual modulation frequency f.sub.ct. The VCO 60 has a certain gain such that an applied voltage to its input causes its oscillation frequency f.sub.cr to be adjusted by a corresponding number of hertz per volt.
Upon initially attempting to demodulate the input signal z(t), the oscillator frequency f.sub.cr is likely to differ from the actual modulation frequency f.sub.ct. If the two outputs of the VCO 60 are viewed as the real and imaginary parts of a complex signal, that signal has a constant magnitude, and a constant rate 2 .pi.f.sub.cr of phase change. When z(t) is multiplied by the complex VCO 60 output, a complex analog signal is produced. The separate real part and imaginary part of the complex analog signal are converted into a complex digital signal by the analog to digital converter 62. This signal is then filtered by an equalizer 63 to compensate the non-ideal impulse response of the transmission and to filter out the undesired high-frequency bands (as done by the low pass filters 11 in FIG. 1) resulting from the multiplications. If the VCO 60 frequency f.sub.cr is exactly the correct modulation frequency f.sub.ct, then the real part of the equalizer output is x(t) and the imaginary part is y(t) so that correct and successful demodulation down from the carrier frequency f.sub.ct has been performed.
Using one of a variety of methods, a tone oscillating at the transmission symbol rate (R/M in FIG. 5) is recovered from the input signal z(t). Using a phase locked loop (not shown), the correct phase of the tone is determined to indicate when, during each period of the tone, to sample x(t) and y(t). A sampling clock is generated and fed into the decision device 64. Directed by the sampling clock, the decision device samples x(t) and y(t). Each sample taken represents a point in the complex plane. If the system is correctly demodulating z(t), and if no noise has distorted the signal in transmission, the sampled point will land exactly on one of the points of the constellation. In the likely event that noise has distorted the signal at some point in the system, the sampled point will not land exactly on one of the constellation points. If random white noise is assumed, a guassian distribution with samples centered around each constellation point will be produced as illustrated in FIG. 8.
Using some decision criteria, the decision device 64 determines which symbol was transmitted for each sample. Once the determination has been made as to which symbol was transmitted, the decision device outputs those bits representative of the determined symbol. The standard rectangular decision regions are shown in FIGS. 8 and 9.
Assuming no noise (for the sake of simplicity), if the VCO 60 demodulation frequency f.sub.cr does not exactly match the modulation frequency f.sub.ct, then the samples that are taken will not land on the constellation points; rather the rectangular matrix of samples will spin at a rate equal to the difference in the two modulation frequencies (f.sub.ct -f.sub.cr) as illustrated in FIG. 9. If the matrix of samples is spinning relative to the constellation of symbols, it will be difficult if not impossible for the decision device to make the correct decisions; thus, symbols will be misinterpreted, and incorrect data will be output. As illustrated in FIG. 9, most of the sample points 90 land in the wrong decision regions, and thus incorrect data is output. Only the inner points 91 landed in the correct decision regions. FIG. 9 shows the phase error .phi. associated with this grouping of samples.
When the matrix of samples is spinning, the system is not locked onto the correct carrier frequency. In order to lock onto the carrier frequency, the system must be able to adjust the VCO 60 demodulation frequency f.sub.cr so as to converge onto the correct modulation frequency f.sub.ct. Proper adjustment of the VCO 60 frequency begins by calculating the phase error .phi. of some or all of the sample points. The phase error .phi. for a correctly translated symbol is illustrated in FIG. 10. The translated symbol 100 has a real part of +5 and an imaginary part of +5i. The sample point 101 which was detected has a slightly larger real part and a slightly lower imaginary part; however, the sample points still fell within the correct decision region 102 of the complex plane 103. The decision device has determined which symbol q 100 was transmitted. The sample point x 101 which is actually detected lies somewhere in the complex plane 103. The phase error .phi. is computed by the phase measuring unit 65 according to the following equation in which x represents the complex conjugate of x. EQU .phi.=Im [x*q/.vertline.q.vertline..sup.2 ], where
.phi. times .pi./2 converts the phase error .phi. into units of radians. The computed phase errors are delivered to a loop filter 66 such as illustrated in FIG. 11. The loop filter 66 essentially accumulates (or integrates) the calculated phase errors over time. If the accumulator gain K.sub.I of amplifier 110 is less than the direct input gain K.sub.D of amplifier 111, more weight is given to the presently calculated phase error .phi. and less weight to the accumulated phase errors. The digital output of the loop filter V is converted into an analog signal by a digital to analog converter 67 and is supplied to the VCO 60 so as to adjust the demodulation frequency f.sub.cr toward the modulation frequency f.sub.ct.
However, when the system is not locked, the decision device 64 will not be detecting the correct symbols very often. The phase error measurements will therefore be meaningless. Since the correct symbol is not detected, the correct phase error .phi. will not be known. As long as the decision device 64 is not detecting the correct symbols, the phase errors calculated will essentially be random numbers with a zero mean. Because the random phase errors have a zero mean, their integral over time will be zero, and the correction value supplied to the VCO 60 will be bouncing up and down in correspondence with the current phase error measurement so that the system is not converging onto the correct demodulation frequency f.sub.ct.
As the sample matrix rotates around, at some time it will rotate into the correct position so that correct decisions are made for a brief time. When this happens, if the rate of rotation of the sample matrix (f.sub.ct -f.sub.cr) is much lower than the symbol rate (R/M), then several phase error measurements directly in sequence will have the same sign (and approximate magnitude), supplying a steady correction value V through the direct input K.sub.D 111. The integral of the measurements will accumulate at register C 112 to a non-zero value in the loop filter 66. When the proper correction voltage V is supplied to the VCO 60, the phase error measurements will become zero, and the accumulated value at register C 112 will maintain the proper correction voltage through the amplifier K.sub.I 110.
The non-zero values supplied to the VCO 60 will adjust the frequency of the VCO 60 slightly closer to the correct modulation frequency. When the VCO 60 frequency is closer to the correct modulation frequency, the sample matrix will spin at a slower rate. If the loop filter 66 accumulates the correct adjustment value, the system will lock onto the constellation, and the sample matrix will cease spinning. When the system is locked, the phase error measurements will become very close to zero, and the correction voltage V supplied to the VCO 60 will be dominated by the accumulated value in register C 112.
The maximum modulation frequency error range over which the system can lock is the locking bandwidth or locking range of the system. There are at least two reasons why the system may not be able to lock. First, if the VCO 60 frequency f.sub.cr is too far away from the carrier modulation frequency f.sub.ct, the sample matrix will be spinning at a high rate. Even if all decisions made by the decision device 64 were correct, the measured phase error angle .phi. computed for each sample would be varying sinusoidally at the same high rate. If gain K.sub.D of the direct input amplifier 111 in the loop filter 66 is not sufficiently high, the correction voltage V supplied to the VCO 60 will be too small to correct the frequency error. The accumulator 113 will not have time to accumulate a non-zero value either. Thus, the correction value will have zero mean.
The system will only lock when the rate of rotation is low enough such that the loop filter 66 will accumulate the appropriate correction value. This maximum rate of rotation which the loop filter 66 can correct represents the loop filter bandwidth. If the decision device 64 always makes the correct decision during the locking process, the loop filter bandwidth is monotonically related to the locking bandwidth of the system.
However, if the system is not locked, the decision device 64 can only consistently make the correct decisions if the transmitter (not shown) is sending out some predetermined training sequence. Therefore, the second reason why the system may not be able to lock is that, in the absence of a specially transmitted training sequence, the decision device 64 will only be making the correct decisions during a very small portion of the sample matrix's rotation. Only during the portion of rotation where each sample happens to be closest to the correct symbol in the constellation will the correct decisions be made. These correct decisions are only made for certain rotational angle ranges. For instance, in FIG. 9, .phi. is too large so that all the decisions for samples 90 are incorrect. When larger constellations are used, the angle during which the sample points are nearest the correct symbol in the constellation become correspondingly smaller. Since the system can only lock during the time in which the correct decisions are being made, the locking bandwidth of the system is the loop filter bandwidth multiplied by the fraction of the circle during which the correct decisions are made. With large constellations, the angle during which lock can occur becomes very small, and the system can only recover from very small modulation-demodulation frequency mismatches (f.sub.cr -f.sub.ct).
Prior art methods for increasing the locking bandwidth include widening the bandwidth of the loop filter 66, sweeping the VCO 60 frequency, and the use of comer points based algorithms. Each of these methods has particular problems and limitations.
Widening the bandwidth of the loop filter 66 will improve the lock range. This is accomplished by increasing the gain K.sub.D 111 of the present phase angle error measurement in the loop filter 66. This gain increase essentially increases the supplied adjustment value V due to the last measured phase error .phi. The loop filter 66 will adapt very quickly to measured phase errors.
However, this approach will increase the jitter. Jitter is caused by the system mistakenly adapting from the correct demodulation frequency f.sub.ct to an incorrect demodulation frequency. When the system is properly locked, the sample matrix will still not exactly match the constellation locations. Because of random noise incurred in transmission, sample points will be distributed around the constellation points. If the bandwidth of the loop filter 66 is too great, the system will change the demodulation frequency f.sub.cr due to each measured phase error .phi.. Thus, random noise will cause the system to mistakenly adapt and thereby unlock more easily. To reduce jitter, one prior art method provides a carrier lock detection circuit to adjust the parameters of the loop filter 66 so as to narrow the bandwidth of the loop filter 66 when the system is locked. As described above, the basic problem with this method is that the decision directed phase detector information degrades as the rotational angle increases. For high QAM systems such as 64 or 256 QAM, the angle over which the decision directed phase detector 65 gives accurate information is very small. This small angle limits the locking bandwidth.
A second prior art approach is sweeping the demodulation frequency f.sub.cr, as illustrated by FIG. 12. To sweep the demodulation frequency f.sub.cr, a separate additional input term to adder 114 in the loop filter 66 is added to adjust the register C 112. The bandwidth of the loop filter 66 is not increased by this; rather the VCO 60 frequency f.sub.cr is methodically increased and decreased (swept) such as shown by arrow 120 over a wide frequency range centered around the initial estimated frequency f.sub.est until the correct demodulation frequency f.sub.ct is brought within the loop filter bandwidth f.sub.LFB. When the system detects that it is locked, the sweeping processed is turned off, and the loop filter 66 degenerates into the one shown in FIG. 11.
There are several disadvantages to this procedure. Sweeping the demodulation frequency f.sub.cr is a slow process. Constant sweeping will degrade bit error rate performance since the system will produce many errors during the lengthy period of sweeping. This method is also very sensitive to the carrier lock detect circuitry. A false lock detect will cause the system to stabilize in an unlocked condition. A false unlock detect will initialize sweeping which may cause loss of lock and will at minimum degrade bit error rate performance while sweeping.
Another prior art approach involves using only the corner points to detect locking. Corner point detection increases the angle of rotation during which lock can occur. As shown in FIG. 13, a magnitude threshold 130 is chosen so that only the four corner constellation points 131 are above the magnitude threshold 130. This approach is effective for small constellations but becomes increasing ineffective in larger constellations for two reasons. The first problem is that constellation points are closer together for larger constellations, and thus noise pushes those points close to the corner points outside the threshold more frequently. These points are then mistaken for the corner points 131, and inaccurate phase error measurements result. The second problem is that the four corner points 131 represent a smaller percentage of the total points when the number of total points becomes large. If a random distribution of transmitted points is assumed, then corner symbols 131 are transmitted less frequently in larger constellations. These two factors translate into a much noisier phase measurement, and thus adversely affect the ability to gain and maintain lock.